This week, I was responsible for preparing the block-out mesh for basic animation. Once I received the is mesh, I used a default mocap skeleton as a base and placed the joints in the model by hand. During the process of placing the joints, I wrote some Python scripts in Maya to help me orient the joints and copy the transforms of the joints on the left to the joints on the right. Finally, I brought the model into Unreal engine and set up an IK retargeting system to place the character in the game using an adapted version of the default Quinn character's animation blueprint and transferred animations.
Here is the character skinning in Maya.
"Select" is merely a hierarchy selection tool, because it is tedious to go into the menu each time. The Orient tool orients the joints and automatically detects end-joints and orients them correctly to their parents. The Symmety tool enforces symmetry on joints by copying the matrix from the left joint, finding the right joint, and scaling the left joint's matrix by -1 on the X axis in order to create mirrored transforms. The Mirror tool is the same, except it creates the joints, too, setting the parents correctly in symmetry. FInally, the Reload tool forces Maya to read my Python module again. It assists me in developing my tools in a standalone way that is portable and easy to update.
Here are the tools in action. It gives the user a text box input for the Left and Right ID's and a choice between X, Y, or Z axis for symmetry.
Some screenshots from my VSCodium project. On the left is code for the UI, and on the right is code that the UI tool calls to do the rigging tasks.
Here it is in Perforce at //CLASSES/Cohort22/Classes/Art/CommonArt/Semester_01/InteractiveExperience/TellTaleHeart/Source/Characters/Killer/killer.fbx
Here is the Killer blockout character in the game environment.